
<?php
/**
 * Controller is the customized base controller class.
 * All controller classes for this application should extend from this base class.
 */
class Controller extends CController
{
	/**
	 * @var string the default layout for the controller view. Defaults to '//layouts/column1',
	 * meaning using a single column layout. See 'protected/views/layouts/column1.php'.
	 */
	public $layout='//layouts/column1';
	/**
	 * @var array context menu items. This property will be assigned to {@link CMenu::items}.
	 */
	public $menu=array();
	/**
	 * @var array the breadcrumbs of the current page. The value of this property will
	 * be assigned to {@link CBreadcrumbs::links}. Please refer to {@link CBreadcrumbs::links}
	 * for more details on how to specify this property.
	 */
	public $breadcrumbs=array();
    /**
     * @return array action filters
     */
    public function filters()
    {
        return array(
            'accessControl', // perform access control for CRUD operations
        );
    }

    /**
     * Specifies the access control rules.
     * This method is used by the 'accessControl' filter.
     * @return array access control rules
     */
    public function accessRules()
    {
        return array(
            array('allow',  // allow all users to perform 'login' actions
                'users'=>array('*'),
                'actions' => array('login'),
//                'expression'=>'!Yii::app()->user->getState("isAdmin")',
            ),
            array('allow',  // allow all users to perform 'login' actions
                'roles'=>array(Constant::ROLE_ADMIN),
                'users'=>array('@'),
            ),
            array('allow',  // allow all users to perform 'login' actions
                'actions'=>array('login', 'logout', 'error', 'home', 'taskuser', 'info', 'taskdetail', 'updatestatus', 'stepstatus'),
//                'roles'=>array(Constant::ROLE_ANALYST),
                'users'=>array('@'),
//                'expression'=>'!Yii::app()->user->getState("isAdmin")',
            ),
            array('deny',  // deny all users
                'users'=>array('*'),

            ),
        );

    }

    public function init()
    {
        System::loadConfiguration();
        Yii::setPathOfAlias('bootstrap', 'protected/extensions/bootstrap');
        if(isset($_GET['_lang'])){
            Yii::app()->setLanguage($_GET['_lang']);
        }else{
            if(isset($_GET['language'])){
                Yii::app()->setLanguage($_GET['language']);
            }
        }
    }
}